
; B5DC-1.INS - Hayes MM-100 insert for BYE5 - 07/17/85
;
;	  D. C. Hayes MicroModem 100 Interface routines
;
; This version is for the D.C. Hayes MM100 and 80-103A modem cards.
; Note:  This is an insert, not an overlay.
;
;
; =   =   =   =   =   =   =   =   =   =   =   =   =   =   =   =   =   =
;
; 07/17/85  Written for use with BYE5		- Irv Hoff
;
; =   =   =   =   =   =   =   =   =   =   =   =   =   =   =   =   =   =
;
;
; Port equates
;
PORT	EQU	80H		; Modem data port
MDCTL1	EQU	PORT+1		; Status port and control port #1
MDCTL2	EQU	PORT+2		; Control port #2
;
;
;-----------------------------------------------------------------------
;
; See if we still have a carrier - if not, return with the zero flag set
;
MDCARCK:IN	MDCTL1		; Read port
	ANI	40H		; Carrier there?
	RET
;.....
;
;
; Disconnect and wait for an incoming call
;
MDINIT:	XRA	A		; Drop carrier, if any
	OUT	MDCTL2		; Clear off-hook flag, turn off carrier
	RET
;.....
;
;
; Input a character from the modem port
;
MDINP:	IN	PORT		; Get character
	RET
;.....
;
;
; Check the satus to see if a character is available.  If not, return
; with the zero flag set.  If yes, use 0FFH to clear the flag.
;
MDINST:	IN	MDCTL1		; Get status
	ANI	01H		; Check the receive ready bit
	RZ
	ORI	0FFH
	RET
;.....
;
;
; Send a character to the modem
;
MDOUTP:	OUT	PORT		; Send it
	RET
;.....
;
;
; See if the output is ready for another character
;
MDOUTST:IN	MDCTL1		; Get status
	ANI	02H		; Check transmit ready bit
	RET			; Return with proper status
;.....
;
;
; Reinitialize the modem and hang up the phone by dropping DTR and
; leaving it inactive.
;
MDQUIT:
MDSTOP:	RET			; Unused
;.....
;
;
; The following routine sets the baudrate.  BYE5 asks for the maximum
; speed you have available.
;
SET1200	EQU	$		; 1200 bps not supported
SET2400	EQU	$		; 2400 bps not supported
;
SETINV:	ORI	0FFH		; Make sure the Zero flag isn't set
	RET
;.....
;
;
SET300:	MVI	A,17H		; 8 bits, no parity, 1 stop bit
	OUT	MDCTL1
	MVI	A,83H		; 300 baud and answer phone
	OUT	MDCTL2
	XRA	A		; Make sure Z is set
	RET
;.....
;
;			       end
;-----------------------------------------------------------------------
